草庐IT

JSON 到 TypeScript 类实例?

全部标签

javascript - 如何在 typescript 文件中使用 json 文件

我有一个名为men.json的文件。我想做等同于varmen=require('./men.json');。无论我尝试过什么,它都会寻找./men.json.js文件。我读到我不能使用import,因为它不是ts文件。什么是等效的要求行? 最佳答案 declaremodule'*.json'{var_:any;exportdefault_;}然后你可以importmemfrom'./mem.josn'将其放入tsconfig.json中包含的某个文件中现在您可以要求.json,这适用于任何其他文件格式(尽管您需要webpack,因为

javascript - Jasmine 测试用例未在已编译的 Typescript 中定义内启动

我正在处理一个测试项目,我正在编写一个纯JavascriptJasmineKarma设置来测试预编译的Typescript设置。但是,我无法启动测试用例。我可以在控制台中看到来自已编译typescript的控制台消息正常运行,但它根本不会启动测试脚本。请注意,这来自AngularApp,但这整个部分来自一个在没有Angular2的情况下制作和编译的部分。没有错误消息,除此之外显示运行了0/0测试,并且没有“component/to/test”的时间戳。在test.spec.js文件中,我有define("testName",["component/to/test"],function(

javascript - typescript 介意对象文字中实例化的顺序吗?

我使用的是最新的Typescript版本:2.6.2。我遇到了一个奇怪的情况,如果我执行foo({a:1,b:2})-事情不起作用,而如果我执行:foo({b:2,a:1})-它们确实有效。我有一个通用类,一个具有2个属性和一个函数的接口(interface)。代码如下:classMyClass{value:T;next(value:T):void{}}exportenumStateKey{backlogItems='backlogItems'}exportinterfaceState{backlogItems:number[];[key:string]:any}classA{priv

javascript - TypeScript 和 Angular,执行顺序在这

我在Angular应用程序中有以下代码,html看起来像这样。onSubstringSelect在组件的.ts部分:onSubstringSelect(item:any){constdataPois=this.getPois(data);alert("2ndalert"+dataPois);//etc}getPois(data):any[]{this.api.getPois(data).subscribe((result:any)=>{alert("1stalert");returnresult.pois;}},(error:any)=>{console.error('error',e

javascript - 类的实例可以在 JavaScript 中替换自身吗?

我在全局范围内有一个变量,它被分配了一个这样的类的实例:window.someInstance=newMyClass();稍后,我需要用一个新实例替换该变量,但是从类本身的方法中执行此操作是否可能/可接受?例如:functionMyClass(){this.myClassMethod=function(){window.someInstance=newMyClass();};}window.someInstance=newMyClass();window.someInstance.myClassMethod.call();我知道这是一个奇怪的场景,但它运行得很干净,我只是不确定这是否会

javascript - 使用模块模式和实例化新对象之间的区别

我正在尝试重构一些javascript,但我对模块模式感到困惑。我现在的一种方法是简单地声明一个包含组件所有功能的类varFoo=function(){this.Bar={};...}并创建一个新实例以在组件中使用。但我也读过模块模式,我看不出与我所拥有的相比有什么好处,因为它似乎做的差不多,只是以更复杂的方式。也许我只是没有遇到让它成为更好选择的案例。例如,这样的模式:varmodule=(function(){//privatevariablesandfunctionsvarfoo='bar';//constructorvarmodule=function(){};//protot

javascript - 简单对象 vs. 工厂 vs. 构造函数——实例

在JavaScript中创建对象的三种方式:通过简单的对象创建通过工厂功能通过构造函数简单的对象创建:varronaldo={name:"Ronaldo",age:"35",quote:"HiIamRonaldo",salary:function(x){returnx+2500;}};工厂函数:functionhuman(x,y,z,i){return{name:x,age:y,quote:z,salary:function(i){returni+2500;}}};varZini=human('Zenidan','41','IamZidane',7500);构造函数:varhuman=

javascript - 遍历 JSON 数组给出 "undefined"结果

这个问题在这里已经有了答案:Whyisusing"for...in"forarrayiterationabadidea?(28个答案)JavaScriptfor...invsfor(22个答案)关闭7年前。我有一个从AJAX解析的JSON字符串(在responsevar中):JSON{"TheArray":[{"AlmostThere":{"whatWeAreLookingFor":"Hello"}},{"AlmostThere":{"whatWeAreLookingFor":"Goodbye"}}]}正在解析的JSONvarjsonData=JSON.parse(response);

javascript - 使用 TypeScript 和 Babel gulp sourcemaps

我目前正在编写一个业余项目,在那里我可以了解有关TypeScript和ES6(使用babel)的更多信息。我想在我的TypeScript中使用ES6,所以我决定采用以下工作流程。Typescript(ES6)->Babel(ES6)->ES5现在我正在使用Gulp自动执行所有这些操作,但我很难让源映射正确生成。我应该提一下,这个样式是/r/typescript上的一个用户向我推荐的,所以我什至不确定它是否可行。无论如何这是我当前的gulp任务varserver=$.typescript.createProject('src/server/tsconfig.json');gulp.tas

javascript - TypeScript 默认导入失败

我正在尝试设置一个项目并使用mocha和mjackson/expect库运行测试以进行断言。我要测试的代码是://insidesrc/lib/math.tsexportfunctionsum(a:number,b:number):number{returna+b;}我的测试如下://insidesrc/tests/math.tests.ts//////importexpectfrom'expect';import{sum}from'../lib/math';describe('sum',()=>{it('shouldaddtwonumbers',()=>{expect(sum(1,2)